                          ============================
                           R E L E A S E    N O T E S
                          ============================

                       Broadcom NetXtreme Gigabit Ethernet Driver
                    For Windows Vista (Longhorn ) 32/64 bit versions

                       Copyright (c) 2000-2006 Broadcom Corporation
                                All rights reserved.


Version 9.36.0.0 Nov 9, 2006
----------------------------------------------------------------------
  1.  Problem:
        CQ#27231 Network Address property is displayed twice  in Advanced 
        Tab of Network Properties with the latest driver 9.34 on only 5703.     
        The problem is not seen with the In-box driver, v 9.20.03 and  not  
        seen on 5755, 5705, 5714, 5751.
      Cause:
        A bug in the INF file that doesn't clean up stale registry keys for
        certain devices.
      Change:
        Modify the INFs to clean up registry keys before installation.
      Impact:
        Resolve CQ#27231.

  2.  Problem:
        CQ27281 NEC - link down after reboot with Vista Drivers on 
        NEC WR1 system
         - Unable to pass traffic when the 5752M,
        5755M or 5787M is initialized with the Ethernet cable
        unplugged.
      Cause:
        Similar to CQ27241, CQ27280 in NDIS5x drivers,
        A bug in the power saving enhancement for 5752M, 5755M and
        5787M controllers was powering down the GPHY DLL during
        controller initialization.
      Change:
        Modified the Ndis driver to not power down the GPHY DLL
        durring controller initialization.
      Impact:
        Resolve CQ27281.

  3.  Problem:
        5705 NDIStestv6.5 RC_2 DTM LSO test failure. 
      Cause:
        The cert test failed at packet size = 7268B MSS=904 at 10M/H.
        Fix for CQ27281,27241,27280 introduced a bug that long burst
        mode is mistakenly enabled for 5705 device when it's configured
        at 10M/H 6.25mhz core clock which will cause RDMA read FIFO
        overrun.
      Change:
        1. Do not enable long burst for 5705 in the GPHY power down
           code introduced in the GPHY power down fix.
        2. Set RDMA mode to "FIFO available" when the device is on
           6.25 mhz core clock.
      Impact:
        Fixed cert failure.


Version 9.35.0.0  Oct 25, 2006
----------------------------------------------------------------------
  1. Problem:
       CQ#27253 - NDIS6: 1c_mini6send test script failure
       CQ#27221 - Interface hangs while running NSlicer and Netperf 
       at the same time
     cause:
       A bug was introduced in v9.33 that UP code gets executed on
       MP system.
     Change:
       Fixed the typo to make sure MP system is correctly detected
       and setup.
     Impact:
       none.

Version 9.34.0.0  Oct 23, 2006
----------------------------------------------------------------------
  1. Problem:
       CQ#27167 - wake up capabilities settings set to magic packet only
       will not show link when system is in sleep state
     cause:
       OS doesn't behaves right when MAGIC WOL is enabled alone.
     Change:
       Over-advertised WOL caps.
     Impact:
       none.

  2. Problem:
       PCIe link gets reset upon system crash which is not desirable.
     cause:
       Upon system crash, the driver reset the PCIe link along with
       the MAC core which causes other bugchecks.
     Change:
       Don't reset PCIe link for PCIe devices upon bugcheck.
     Impact:
       none.

Version 9.33.0.0  Oct 20, 2006
----------------------------------------------------------------------
  1. Problem:
       CQ#26855 - NDIS 6: 2c_oidsndisrequest and Stats test script failed.
     cause:
       The MAC doesn't collect UC/MC/BC byte status.
     Change:
       Add code in the driver to collect UC/MC/BC byte counts in both send
       and receive path.
     Impact:
       May have minor performance impact.

  2. Problem:
       CQ#26857 - NDIS 6: 1c_mini6rssoids test script failed.
     cause:
       The new test kit requires driver to verify RSS settings.
     Change:
       Add code to verify RSS settings before applying.
     Impact:
       none.

  3.  Enhancement Request:
        CQ#27184 - Remove support for 5906, 5906m, 5722 and 5756ME for 
        NDIS 6.0 RC driver for 9.7v. 
      Cause:
        This is a requirement for R9.7.
      Change:
        Remove device IDs: 1712,1713,1674.
      Impact:
        None.



Version 9.32.0.0  Oct 12, 2006
----------------------------------------------------------------------
  1. Problem:
       CQ#27003 - Remove DbgBreakPoint calls in NDIS6 v9.31 driver.
     cause:
       A hardcoded breakpoint was left in free build causing DTM failure.
     Change:
       Removed the hardcoded BP.
     Impact:
       none.

  2.  Enhancement Request:
        CQ#27025 - Vista driver do not have vlan tagging support. 
      Cause:
        In Windows Vista, Microsoft states the only correct way to
        support VLAN is using IM driver to set VLAN ID in NBL OOB.
        After discussed with MSFT, we added the VLAN ID registry 
        setting as a temporarily solution for customers who want 
        to support VLAN without an IM driver.
      Change:
        Added editable keyword "VLAN ID" in INF. Driver tags packets
        according to the current 801.1P/Q and VLAN ID settings.
      Impact:
        None.

  3.  Enhancement Request:
        CQ#26977 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#26977 Enhancement Request.

  4. Problem:
       CQ#27045 - NDIS6 driver should specify its physical medium as 
       NdisPhysicalMedium802_3.
     cause:
       New requirement in latest DTM.
     Change:
       Changed to report 802.3 as medium type at initialization.
     Impact:
       none.

  5. Problem:
       CQ#27100 Vista - Network address does not work.  
       DUT only shows permanent MAC.
     cause:
       The registry key controlling the LLA is not up to the latest
       WDK document and OS. The ndis function to read the LLA registry
       key doesn't not work.
     Change:
       INF update. Changed the LLA key from *NetworkAddress to 
       NetworkAddress.
     Impact:
       none.


Version 9.31.0.0  Sep 29, 2006
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#26873 NDIS6:  string name enhancements in order to warrant 
        "unified INF file" for Vista 
      Cause:
        The latest Vista v9.24.0.0 INF-file differs from the 
        INBOX-INF-file as to where it cross-references certain OEM's, 
        like Dell and IBM.  This will break the "unified INF-file" 
        approach taken for the INBOX-INF-file v9.20.0.1. We therefore 
        want to "enhance" the current Broadcom-INF-file, so that it may 
        follow the approach taken in the Vists-INBOX-INF file..
      Change:
        Renamed the OEM references in the generic INF files.
      Impact:
        None.

  2. Problem:
       Need to Sync to latest NDIS5x (10.11c) driver to pickup fixes.
     Cause:
       Enhancement request. 
     Change:
       Sync to latest NDIS5x.
     Impact:
       Fixed the problem as described above.

  3. Problem:
       Need to pick up enhancements and changes made to the RC_1 
       branch.
     Change:
       Sync to 9.20.0.5. Enhanced the way the driver handles Pause
       reset, and set power.
     Impact:
       None.

Version 9.30.0.0a  Sep 22, 2006
Same driver binary files as prior v9.30 Driver Release
----------------------------------------------------------------------
  1.  Enhancement Request:
        The latest Vista v9.24.0.0 INF-file differs from the INBOX-INF-file 
        as to where it cross-references certain OEM's, like Dell and IBM.  
        This will break the "unified INF-file" approach taken for the 
        INBOX-INF-file v9.20.0.1.
      Change:
        Renamed all OEM specific references in the INF files.
      Impact:
        Resolve Enhancement Request. No impact.

Version 9.30.0.0  Sep 21, 2006
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#26196, 26530, 26537, 26697,26739 Add 4 ID device match for 
        new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve Enhancement Request.

Version 9.24.0.0  Aug 31, 2006
----------------------------------------------------------------------
  1.  Problem:
        NDIS5.1 and NDIS6.0 driver can not coexist on Vista if system
        has mixed of 5703 and newer device and 5700/01/02 devices.
      Cause:
        NDIS51 and NDIS60 INF use same service displayname. Os installer
        will not allow difference services with identical display name.
      Change:
       Changed NDIS6 inf file to use display name different from ndis51
       INF file.
      Impact:
       Vista can load NDIS5.1 and NDIS6.0 driver on the same machine
       at the same time.

  2.  Problem:
        5704 won't send on system with 16GB of memory.
      Cause:
        H/W bug on RDMA request crossing 4*N GB address boundary. This
        also applis to any devices before 5755.
      Change:
       Coalesce send fragments when detecting any fragment in a 
       send packet meet such condition.
      Impact:
       Fixed the problem mentioned above. Performance impact is not
       observed.

Version 9.23.0.0A  Aug 29, 2006
Same driver binary files as prior v9.15 Driver Release
----------------------------------------------------------------------
  1.  Enhancement Request:
        Remove StanfordME support for 9.7 release.
      Cause:
        Release requirement.
      Change:
        Removed 5906/5906M support.
      Impact:
        StanfordME support will not load.


Version 9.23.0.0  Aug 25, 2006
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#26523 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#26523 Enhancement Request.

  2.  Enhancement Request:
        CQ#26530 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#26530 Enhancement Request.

  3.  Enhancement Request:
        CQ#26537 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#26537 Enhancement Request.

  4.  Enhancement Request:
        Remove 5906/5906M for 9.7 release.
      Cause:
        Release requirement.
      Change:
        Removed 5906/5906M support.
      Impact:
        5906/5906M will not load.

  5.  Problem:
        Interrupt coalsecing doesn't work.
      Cause:
        One line of code in tigon3.c was removed by the diff tool
        while syncing up to the XP source code.
      Change:
        Added the missing code back.
      Impact:
        Fixed the problem.
  

Version 9.22.0.0  Aug 16, 2006
----------------------------------------------------------------------
  1. Enhancement request:
       Need to merge HP DT/MB 4-part IDs into generic inf for Vista.
     Change: Added HP DT/MB 4-part IDs into generic inf for Vista.
     Impact: Generic inf now contains HP DT/MB 4-part IDs.
  
  2. Problem: 
       CQ26371 - System Under Test with 5756ME NIC encounters BSOD 
       during MS PCI Compliance Test
     Cause: 
       See detailed report attached to the CQ.
     Change: 
       1. Needs to check the state of bit 12 at 0xDC before programming the 
       Clkreq Enable Bit and the PLLPowerDownL1_Disable Bit if bit 12 of DC 
       is 1 then Write 1 to the Clkreq Enable Bit and Write 0 to the 
       PLLPowerDownL1_Disable Bit else if bit 12 is clear then Write 1 
       to the PLLPowerDownL1_Disable Bit.  

Version 9.21.0.0  Aug 08, 2006
----------------------------------------------------------------------
  1. Problem:
       Need to Sync to latest NDIS5x driver to pickup fixes and 5906
       support.
     Cause:
       Enhancement request. 
     Change:
       Sync to latest NDIS5x.
     Impact:
       Fixed the problem as described above.

  2.  Enhancement Request:
        CQ#26184,26263,26147,24352,26146,26261,26262,26196,25620,26197.
        Add PNP IDs to Vista INF file.
      Cause:
        Requirement for Vista support.
      Change:
        Added new IDs to INF file.
      Impact:
        Resolve CQ enhancement Requests.


Version 9.20.0.2  Aug 04, 2006
----------------------------------------------------------------------
  1. Problem:
       Driver cannot be unloaded after running 2c_loadunload in a loop
       overnight. It usually happens after running the script for 4
       hours.
     Cause:
       At UM_Halt, driver disables interrupt on the h/w then calls 
       NDIS function to disconnect interrupt from operating system.
       There is a window that a pending DPC for Isr has been queued
       but OS has not called NDIS's DPC for Isr when driver made call
       to disconnect interrupt from IDT. NDIS will in turn a)
       deallocate interrupt object. b) NdisMDeregisterInterruptEx 
       immediately return without waiting for pending DPC to complete.
       When system calls NDIS's Dpc for Isr later, NDIS will not call 
       driver's Dpc for Isr routine. It leaves driver pending DPC count
       non-zero, hence, the halt function will wait until it goes to
       zero which will never happen.
     Change:
       Driver waits for pending DPC to complete after disabling
       interrupts on h/w. It only call NdisMDeregisterInterruptEx when
       pending DPC count is clear (zero).
     Impact:
       Fixed the problem as described above.

  2. Problem:
       AUT stops passing traffic in Chariot Stress test when LsoV2
       is enabled on capable NICs such as 5755/5754/5787.
     Cause:
       Driver would prematurely clear the MSS in the LSO NBL information
       structure when the driver is running out of SBD and pushes the
       NetBufferList back to the send queue. The driver would not see
       the MSS information when resending the netbufferlist after SBDs
       become available.
       The logic of setting LSO completion is carried from old code.
       This problem was in the driver since day one but it doesn't
       expose until we test it with RC1 build+LsoV2.
     Change:
       Modify the code to setup LSO completion information after
       the LSO packet was actually transmitted.
     Impact:
       Fixed the problem as described above.

Version 9.20.0.1  Jul 20, 2006
----------------------------------------------------------------------
  1. Problem:
       Driver sometimes experience linked list corruption which leads
       to different problems such as hang, data corruption etc.
     Cause:
       The function s_list_pop_head does not terminate the linked-list
       by setting the "next" field to null. If we subsequently add the
       removed entry to other linked list, it would add more entries 
       than it's supposed to and the value in "cnt" field doesn't match 
       the number of entries in the link list obviously.
       XP driver doesn't have this problem because it doesn't
       use any of functions from listq.h
     Change:
       Nullify the "next" field after the entry was removed from queue.
     Impact:
       None.

Version 9.20.0.0  Jun 13, 2006
----------------------------------------------------------------------
  1. Problem:
       NDIS6 driver for Vista RC 1 needs to implement new offload 
       interface.
     Cause:
       This is a Vista RC 1 and RTM requirement.
     Change:
       Implemented changes to comply with the new offload interface.
       Implemented Group Keyword for TCPIP offload settings.
       Modified the code to comply with latest NDIStester tools.
     Impact:
       Driver passes RC 1 NDIStest on a patched 5452 build.

  2. Problem:
       Need to merge BRCM generic INF, HP_MB, HPQ INFs into a single
       INF file for Vista In-box inclusion. This is to ensure all
       existing devices will load upon Vista installation.
     Cause:
       This is a Vista RC 1 and RTM requirement.
     Change:
       See t:\docs\msft\NDIS5x INF IDs_note.doc for details.
     Impact:
       All IDs from these infs (based on b57win 9.52B) are included 
       in the inbox INF file.

  3.  Enhancement Request:
        CQ#25620 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM. (mobile)
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#25620 Enhancement Request.

Version 9.18    Jun 24, 2006
----------------------------------------------------------------------
  1. Problem:
       Resume take  2 seconds longer if the ethernet cable is connected.
     Cause:
       NDIS6 driver does not complete a set power request timely if 
       link is up before going into low power mode. The driver will
       wait for the link to come up at DPC level for seconds. This 
       prevent other thread from running. 
     Change:
       Driver completed the set power without waiting the link to go up.
       Driver does not indicate link status to OS during link setup right
       in the case of resuming from low power mode. It schedules a link
       check timer to finally report the link status if there is a change.
       This is to ensure driver doesn't mistakenly indicate a link down
       and indicate link up again.
     Impact:
       Fixed the problem as described.

 2.  Problem:
        CQ25155 and CQ23480. Under rare circumstances, 5721 devices can
        encounter a read DMA overrun.  This would result in subsequent
        read DMA operations not completing.  This in turn would lead
        to network applications failing or "timing out".
      Cause:
        This is due to a newly discovered corner case HW bug in the 5721.
        The same problem is also in 5751, 5753, 5789, 5752, and 5755
        devices.  5787, 5705, and devices introduced before the 5721 and
        5751 are not affected by this issue.  This HW issue can occur
        under a rare circumstance where a very large Rx BD read 
        request is generated while the RDMA read FIFO is partially filled
        with Tx  data and the TxMbuf memory is full.  Most network 
        applications would never generate this circumstance, and thus this
        problem is hard to reproduce, and won't occur with most network
        applications. This problem could theoretically occur at 1Gb speed
        but is more likely to occur at 10mb or 100mb operation, and is more
        likely to occur with applications that generate lots of smaller 
        (e.g. 82B) packets. More information about this issue will be
        included in future 57xx chip errata documents for affected
        devices.
      Change:
        Modified the driver to limit how many BDs the HW will try to fetch
        at any given time.  With this workaround, the HW should never 
        fetch more than 15 RX BDs in a read burst during runtime (not init
        time). This avoids the circumstance that could expose the HW
        erratum.
      Impact:
        The performance impact of this change is negligible.

 3.  Problem:
	CQ#25391 - 1c_KernelCalls IoGetAttachedDeviceReference
     Cause:
        This is introduced while implementing a workaround for beta 2 
        NDIS.sys not being able to access PCI configuration space at
        MiniportAddDevice callback. Miniport driver hence need to get
        access to the device stack. But NDIS driver can not call 
        IoGetAttachedDeviceReference.
     Change:
        Remove the IoGetAttachedDeviceReference since the driver doesn't
        really need reference to the topmost device object while accessing
        the PCI bus driver.
     Impact:
        Fixed CQ#25391.
        
Version 9.17    Jun 15, 2006
----------------------------------------------------------------------
  1.  Enhancement Request:
        Enable private OID support for Vista.
      Cause:
        LH NDIS wrapper will failed OIDs sent to any NDIS6 driver if 
        the OIDs has not been included in the supported OID list. If
        NDIS6 driver returns private OIDs in the support list,
        IOCTLCoverage will throw random data through the advertised
        OID. The driver does not validate the contents in the input
        buffer that cause random behavior while handling private OID.
      Change:
        Modify the driver to include private OIDs in the supported
        OID list. An input buffer header was added to each private.
        The header contains signature setup by the calling application.
        Driver always validate the signature before process a private
        OID. Changes are also made to BMAPI.
      Impact:
        Driver now can passed IOCTLCoverage test with private OID
        support. BACS can talk to NDIS6 driver through the modified
        BMAPI.

  2. Problem:
       CQ#25320 NDIS6: InterruptModeration test failure
     Cause:
       Driver does not return BytesWritten. 
     Change:
       Return buffer size properly.  
     Impact:
       Fixed CQ#25320.

  3. Problem:
       Driver BSODs when there are more than 32 CPUs installed.
     Cause:
       Driver assumed the max number of CPUs is 32 and allocated
       a static array of 32 elements for per-CPU data. It causes 
       memory overrun when the number of active CPUs is more than 32.  
     Change:
       Instead of using hardcoded number, the driver gets number
       of active CPUs through newly added kernel API and allocates
       memory from non-paged pool for per-processor slot data.  
     Impact:
       Driver will not crash when number of CPU is greater than 32.

  4. Problem:
       Driver initialization causes newer Vista check build to assert.
     Cause:
       Driver didn't properly clean up the RSS attribute pointer while
       registering generic attributes with ndis.
     Change:
       Change made to the initialization code to clean up the RSS
       attribute pointer if the chip does not support RSS.
     Impact:
       Fixed the assert in newer Vista check build.

Version 9.16    Jun 12, 2006
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#24438 - Need to support MSI in NDIS 6 driver on MSI capable 
        devices.
      Cause:
        The NDIS 6 driver for 57xx devices does not currently support 
        MSI on *any* device, even devices that are capable of supporting 
        MSI.  It is a MSFT Vista logo requirement that all PCI-E devices 
        supoort MSI, and thus the driver for PCI-E devices should support 
        MSI. So the driver needs to be modified to support MSI for 
        Shasta Cx step devices, and all later PCI-E devices including 
        Baxter, Stanford, Jade, and Caeser. The driver should not support 
        MSI on Shasta A/B steps due to known HW errata regarding MSI in 
        those devices. At this time the driver is not required to support
        MSI on non PCI-e devices.
      Change:
        Added code support MSI in ndis6 driver. Change INF to enable OS
        to assign MSI resources for devices newer than Shasta. The driver
        implemented code to filter out MSI resources and roll back to INTX
        for Shasta A/B steps based on chip rev read from PCI config 0x68.
      Impact:
        MSI now is supported on Shasta CX and up.
        

Version 9.15b    May 19, 2006
Same driver binary files as prior v9.15 Driver Release
----------------------------------------------------------------------
  1.  Enhancement Request:
        Keep NDIS60 INF in sync with XP's INF.
      Change:
        Synced to 9.52B XP inf.
      Impact:
        None.
 

Version 9.15a    May 17, 2006
Same driver binary files as prior v9.15 Driver Release 
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#24766 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM. (mobile)
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24766 Enhancement Request.

  2.  Enhancement Request:
        CQ#24456 Remove 4 ID device match for new OEM project.
      Cause:
        Old 4 ID device match support request by OEM. (mobile)
      Change:
        Removed new 4 ID device match for OEM project.
      Impact:
        Resolve latest requirement for CQ#24766

Version 9.15.0.0    May 12, 2006
----------------------------------------------------------------------
  1. Problem:
       CQ#24741 INF Scrub for Vista Inbox Driver Revealed Missing Support 
       for Some Chips and Invalid 4-part IDs.
     Cause:
       Some 2-Part IDs are missing and invalid 4-Part IDs. 
     Change:
       Added required 2-Part IDs and removed invalid 4-Part IDs.  
     Impact:
       Fixed CQ#24741.
  2. Problem:
       Need to sync-up to XP driver to pickup latest fixes.
     Change:
       Manually merge files from XP driver.
     Impact:
       Picked up latest changes, fixes to the XP driver.

Version 9.14.0.0  May 5, 2006
Merged from 9.4.2.9
----------------------------------------------------------------------
  1. Problem:
       There are multiple synchronization problems in code paths,
       such as the Pause/Restart, Reset, Halt, PowerManagement, interrupt
       and DPC handling etc.
     Cause:
       Vista OS appears to be more asynchronous which would trigger
       some race conditions in the some code inherent from the old design. 
     Change:
       Make disabling/enabling interrupt synced with ISR, ensure no pending
       DPC after interrupt has been disabled. Re-write RX code so that is
       clean and easy to sync with other operations such as reseting, pausing,
       restarting, switching between power modes. Driver can not be safely reset
       in most case so the reset code has been changed to asynchronous.  
     Impact:
       Fixed many race conditions reported by MSFT during their internal
       test and deployment.

  2.  Enhancement Request:
        Use in-stack spinlock to improve performance in performance critical
        Path.
      Cause:
        Enhancement.
      Change:
        Use in stack spinlock to improve performance in performance critical
        Path.
      Impact:
        Enhance spinlock performance.

  3. Problem:
       Interrupt coalescing doesn't work and CPU usage is high under heavy
       traffic.
     Cause:
       Driver disables interrupt at ISR and invoke DPC. DPC will continuously
       check status block update and process send and receive events until
       a) no more status block update event b) DPC has executed more than
       10 ms c) DPC loop count has been reached. When DPC is running, no
       interrupt is generated hence the interrupt count is very low. The
       interrupt coalescing logic believes the device is not generating
       many interrupts/events and won't kick in. 
     Change:
       change made to the DPC to increment the interrupt count when it detects
       a new status block update so that the interrupt coalescing logic will
       engage to coalesce the host-attention events.  
     Impact:
       Reduced CPU utilization under heavy traffic and improve PEI.


Version 9.13.0.0  May 5, 2006
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#24456 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM. (mobile)
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24456 Enhancement Request.

  2.  Enhancement Request:
        CQ#24584 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24584 Enhancement Request.

  3.  Enhancement Request:
        CQ#24186 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project. Removed
        reference to 5788 section.
      Impact:
        Resolve CQ#24186 Enhancement Request.


Version 9.12c.0.0  April 20, 2006
Same driver binary files as prior v9.5 Driver Release 
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#24401 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM. (mobile)
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24401 Enhancement Request.

  2.  Enhancement Request:
        CQ#24352 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24352 Enhancement Request.

  3.  Enhancement Request:
        CQ#24351 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24351 Enhancement Request.

  4.  Enhancement Request:
        CQ#24104 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24104 Enhancement Request.

  5.  Enhancement Request:
        CQ#24186 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24186 Enhancement Request.

Version 9.12b.0.0  April 10, 2006
Same driver binary files as prior v9.5 Driver Release 
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#24099 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM. (mobile)
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24099 Enhancement Request.

  2.  Enhancement Request:
        CQ#24192 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24192 Enhancement Request.

  3.  Enhancement Request:
        CQ#24190 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24190 Enhancement Request.

  4.  Enhancement Request:
        CQ#24189 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24189 Enhancement Request.

  5.  Enhancement Request:
        CQ#24186 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24186 Enhancement Request.

  6.  Enhancement Request:
        CQ#24017 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24017 Enhancement Request.


Version 9.12a.0.0  March 31, 2006
Same driver binary files as prior v9.5 Driver Release 
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#24099 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#24099 Enhancement Request.

Version 9.12.0.0  March 24, 2006
----------------------------------------
  1. Problem:
       NDIS6 driver need to pick up latest changes from XP driver.
     Cause:
       Porting bug fixes from XP driver.
     Change:
       Synced files upto 03/06/2006 from b57xp32 v9.20.
     Impact:
       Ported bug fixes from XP driver.
 
  2. Problem:
       Vista 5308 Network Connection displays 1Gb while adapter is
       initialized with a 10/100Mb link.
     Cause:
       NDIS in this build assumes the link speed to be the Max Speed
       the driver has advertised at initialization without sending
       OID to query current link speed. 
     Change:
       The Link Done Timer routine will test the current link speed
       if the link is active. It compares the current speed against
       the Max Speed advertised at initialization time, it indicates
       link speed change event to NDIS if current link speed does not 
       equal to Max Link Speed.
     Impact:
       Network connection correctly shows link speed.

  3.  Enhancement Request:
        CQ23713 Add new 5789 device ID's for OEM customer.
      Cause:
        New OEM project IDs requested.
      Change:
        Added new PCI ID support in NDIS INF files.
      Impact:
        Resolve CQ23713 Enhancement Request.

  4.  Enhancement Request:
        CQ23712 Add new 5789 device ID's for OEM customer.
      Cause:
        New OEM project IDs requested.
      Change:
        Added new PCI ID support in NDIS INF files.
      Impact:
        Resolve CQ23712 Enhancement Request.


Version 9.6.0.0  March 3, 2006
----------------------------------------
  1.  Problem:
        CQ23438 System with 5752M fails to get DHCP address on boot
        if LAN cable was disconnected during OS boot and later 
        connected after user log on to Windows.
      Cause:
        A non recoverable Read DMA error occurs in this test scenario, 
        due to NIC's internal core clock being automatically slowed down
        by logic in the device when the GPHY DLL is  automatically powered
        down when CAT 5 cable is disconnected.
        The GPHY DLL automatically gets powered down and NIC's internal
        core clock gets slowed down when the CAT 5 cable disconnected, 
        this is an intended design power saving feature.
        Unfortunately, the slowed down of the core-clock causes Read DMA 
        error, which resulted in the system failed to acquire the IP address
        via DHCP.
      Change:
        Modified driver code to Not  Enable the GPHY DLL Auto-Power-Down
        feature of hardware for 5752M Devices.
      Impact:
        Higher power consumption on these devices when the device is
        enabled, but the network link is down.
        Resolve CQ23438 issue.

  2.  Problem:
        CQ23551 Disable GPHY DLL power-down on 5752M, 5754M, 
        5755M, and 5787M Devices.
      Cause:
        Same problem as CQ23438 would occur for the listed devices.
        A non recoverable Read DMA error occurs in this test scenario, 
        due to NIC's internal core clock being automatically slowed down
        by logic in the device when the GPHY DLL is  automatically powered
        down when CAT 5 cable is disconnected.
        The GPHY DLL automatically gets powered down and NIC's internal
        core clock gets slowed down when the CAT 5 cable disconnected, 
        this is an intended design power saving feature.
        Unfortunately, the slowed down of the core-clock causes Read DMA 
        error, which resulted in the system failed to acquire the IP address
        via DHCP.
      Change:
        Modified driver code to Not Enable the GPHY DLL Auto-Power-Down
        feature of hardware for all  5752M, 5754M, 5755M, 5787M Devices.
      Impact:
        Higher power consumption on these devices when the device is
        enabled, but the network link is down.
        Resolve CQ23551 issue.

  3. Problem:
       NDIStester 6.5 Offloadchecksum failure on 5715/14/80 devices.
     Cause:
       The driver mistakenly enables pseudo header checksum on
       5714/5715/5780 devices.
     Change:
       Made change to the code so that 5714/5715/5780 devices will
       not calculate pseudo header checksum on TX path.
     Impact:
       Passed NDIStestv6.5.

Version 9.6  March 3, 2006
Merged from 9.4.1.x branch
----------------------------------------------------------------------
  1.  Problem:
        1516254 Broadcom: b57nd60a / b57nd60x: 0x9F during stress: 
                DRIVER_POWER_STATE_FAILURE (9f)
        1523492 Broadcom: b57nd60a/b57nd60x: drivers fails to send 
                complete packets causing multiple issues.
      Cause:
        A race conditions in LM_EnableInterrupt and UM_Reset enables
        interrupt twice. It causes interrupt being re-enabled after
        DPC had disabled it.
      Change:
        Have the LM_EnableInterrupt sync with ISR and test if interrupt
        is unmasked before enabling interrupt.
      Impact:
        Resolved MSFT reported 1516254 and 1523492 on CTP release.

  2.  Problem:
        1502715 Broadcom: b57nd60a.sys: v9.5.0.0: X64_0xD1_W_b57nd60a!
                MM_IndicateRxPackets+32b: miniport is indicating packets 
                up when OID_GEN_CURRENT_PACKET_FILTER is not set
      Cause:
        The UM_Restart routine turns on the OkToIndicate flags without
        testing the current packet filter. NDIS clears packet filter 
        when pausing a miniport. When Miniport gets restarted, NDIS does
        not expect miniport to indicate any RX packet until it turns on
        the packet filter.
      Change:
        Do not set OkToIndicatePackets when restarting miniport.
      Impact:
        Resolved MSFT reported 1502715 on CTP release.

  3.  Problem:
        1513694 Broadcom: b57nd60x.sys "\Network Interface(*)\Bytes Sent/sec" 
        counter 0 for Broadcom NetXtreme 57xx Gigabit Controller (NDIS6.0).
      Cause:
        Driver doesn't fully support OID_GEN_STATISTICS.
      Change:
        Implemented OID_GEN_STATISTICS as required.
      Impact:
        Resolved MSFT reported 1513694 on CTP release.

Version 9.5C   *** INF Update ***  Feb 28, 2006      
Same driver binary files as prior v9.5 Driver Release 
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ#23332 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ#23332 Enhancement Request.

Version 9.5B   *** INF Update ***  Feb 14, 2006      
Same driver binary files as prior v9.5 Driver Release 
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ22775, 23125 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ22775, 23125 Enhancement Request.

Version 9.5A   *** INF Update ***  Feb 2, 2006      
Same driver binary files as prior v9.5 Driver Release 
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ14658,22946, and 22956 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ14658,22946, and 22956 Enhancement Request.

Version 9.5   January 31, 2006      
----------------------------------------------------------------------
  1.  Problem:
        Assert during 2c_PMSleep.wsf.
      Cause:
        While fixing RSS shutdown crash on suspend, there is a bug
        being introduced causing NON-RSS devices to leave RX BDs in 
        RX return ring, then LM_SetPowerState waits at dispatch level.
      Change:
        Release main spinlock before calling LM_SetPowerState.
      Impact:
        2c_PMSleep won't assert.

  2.  Problem:
        Halting adapter BSOD.
      cause: 
        While fixing RSS shutdown crash on suspend, there is a bug
        being introduced causing NON-RSS devices to leave RX BDs in 
        RX return ring. This effectively messed up the RX resource
        accounting.
      Change:
        Fix in LM_Abort to make sure non-RSS nics correctly collect
        RX BDs in RX return ring before returning.
      Impact:
        Halting non-RSS adapter won't BSOD.


Version 9.4   January 21, 2006      
----------------------------------------------------------------------
  1.  Problem:
        Fix in 9.3 breaks LSO on 5705, ndistester asserts.
      Cause:
        Boundary condition is not detected correctly.
      Change:
        Modified code to test chip ID range correctly.
      Impact:
        Fixed 5705 LSO.


Version 9.3   January 21, 2006      
----------------------------------------------------------------------
  1.  Problem:
        LSO Cert. failures on 5704
      Cause:
        Need workround.
      Change:
        Disable LSO silently. We Will fix it later.
      Impact:
        LSO is disabled on 5704 and older chips.

Version 9.2A   *** INF Update ***  January 20, 2006      
Same driver binary files as prior v9.2 Driver Release 
----------------------------------------------------------------------
  1.  Enhancement Request:
        CQ14024 Add 4 ID device match for new OEM project.
      Cause:
        New 4 ID device match support request by OEM.
      Change:
        Added new 4 ID device match for OEM project.
      Impact:
        Resolve CQ22775 Enhancement Request.

Version 9.2 January 20, 2006
----------------------------------------

  1. Problem:
         Broadcom driver reports MTU of 1514 in NDISMSetMiniportAttribute  
         MTU should not include header and should report 1500.  TCP then add 14 to the MTU;
         causing IPSec to interpret this as a corrupted packet
       cause:
         Incorrectly report MTU size at initialization.
       Change:
         Report MTU size correctly, MTU should not include header.
       Impact:
         Resolve reported issue.   

  2. Problem:
         Use DDK-5287 to build the driver.
       cause:
         Feb CTP release requirement.
       Change:
         No source code change required.
       Impact:
         Resolve reported issue.   

Version 9.1 January 17, 2006
----------------------------------------
  1. Problem:
         ECD13216 Implement ECD13216 for 5714S/5715S link detection problem.
      Cause:
         Hardware errata on 5714S/5715S
      Change:
         Modified init code to enable configuration bits to enable
         fix for ECD13216 in hardware.
         Modified link status code to read link status from tx status
         register.
      Impact:
         None

  2. Enhancement Request:
        CQ14643 Add new PCI ID support for OEM customer.
      Cause:
        New OEM project.
      Change:
        Added new PCI ID support in OEM installation INF file.
      Impact:
        Resolve C14643 Enhancement Request.

Version 9.0 January 10, 2006
----------------------------------------
  1.  Initial release.
 
  Overall:
      This initial release of BRCM NetExtreme NDIS 6.0 Driver was tested to
      perform the best with Microsoft Longhorn (Vista) Beta build version 5270,
      and all tests were performed using MSFT NDIS Test 6.0.6.

      Although this version (9.0) of BRCM NetExtreme NDIS 6.0 Driver had encountered
      some problems during testing, but we believe most of the problems are MSFT
      Longhorn (Vista) OS and/or NDIS Test tool related.

      BRCM is actively engaged with MSFT regarding the "known issues", and are 
      working with MSFT in driving the resolutions.

      This BRCM NetExtreme NDIS 6.0 Driver support BRCM NetExtreme chip family
      starting from BCM5703, 5704, CIOB-E, 5705, 5751, 5752, 5754, 5755, 5787,
      5714, 5715, HTLE and derivatives.  This NDIS 6.0 Driver removed the support
      for BCM 5700, 5701 and 5702 chips.

  Known issues:
      CQ13764: DPC timeout -- LH 5216.vbl_ndt_netio DPC watchdog timeout with 
               b57xp32 on the stack (reported by MSFT).
      CQ22245: DPC timeout -- 5751C1 freezes OS when IPV6 Chariot traffic is 
               applied
      CQ22290: DPC timeout -- Running Chariot IPV6 stress traffic causes OS to
               lock-up when LSO is disabled
      CQ22305: DPC timeout -- 5787mA1 cannot complete NDIS6 tester 
               2c_mini6Performance.wsf test script

          Note: DPC timeout is an OS issue where the newly introduced 
                DPC watchdog in Windows Vista mistakenly flags the driver 30 
                seconds timeout at DISPATCH level. MSFT is actively 
                looking into this issue. 

      CQ22282: NDIS6 tester exhibits runtime script error when 
               2c_mini6RSSSendRecv is executed
          This appears to be a test kit issue, MSFT is looking into this.
          It only affects 5755 devices.

      CQ22299: 5755A1 Receive Side Scaling (RSS) does not work
          This was caused the "indirection table" set by protocol
          stacks in the Longhorn (Vista) OS.

      CQ22468: NDIS 6 LSO for IPv4 Does Not Appear to Work Based on Performance 
               over CPU Utilization Measurements
          Under investigation.

      CQ14642: NDIS6 wake on LAN does not work for any sleep states
          This is an OS issue.
